//类组件 很强大,也很笨重,很不好理解
//1.自定义的类组件需要继承于React里的类组件
import React, { Component } from 'react'

// 状态state(存放数据的),生命周期,属性和通信,事件,属性校验,错误捕获
// 渲染dom片段(唯一的指令)
class Com extends Component {
    //第一个生命周期
    constructor(props){
        //超级函数,初始化父级类的构造函数,并得到属于自己的this
        super()
        // 状态相当于vue里的data
        //state和setState是官方定义的一对
        //react里数据是单向绑定的.数据流也是单向的
        //只有调用了setSate之后,才能让组件进入更新阶段,从而实现页面更新.
        this.state = {
            count:100
        }
        this.My = {
            name:'张云龙'
        }
        console.log('我被执行了')
    }
    //渲染函数,用于存放dom片段的
    render(){
        /* React.createElement('button',{onClick:function(){
            this.setState()
        }},'累加')
        */
        console.log('我也被执行')
        return <div>
            {this.My.name}
            <button>修改姓名</button>
            我是一个强大的类组件{this.state.count}
            <button onClick={ () => this.setState({count:this.props.stile})}>累加</button> 
        </div>
    }
}
export default Com
